今日文章目錄
- 需求說明
- 事前準備
- 重點說明
- 參考資料
DAY12練習ToDoList分類項目,遇到重複點擊完成鈕,資料無法同時在三種清單上同時更新。
昨晚想了一下,決定重新調整寫法。所以今天一樣是ToDoList奮鬥日記![]()
li都要可以重複點擊完成鈕,並同時更新對應分類。陣列內的資料,去 render 視覺畫面。 const listData = []; // 全部清單
let unfinishedListData = []; // 未完成清單
let finishedListData = []; // 已完成清單
const listData =[
{
id: 1, // 這次練習是用 Math.random() 產生隨機數,但其實還是有可能重複。
value: "Learn JS",
status: "unfinished", // 篩選分類清單依據
priority: 1, // 調整排列順序依據
},
...
];
push加入listDatapriority重新排列listDatalistData,篩選(filter)出未完成、已完成資料render 畫面deleteBtn,參數傳入:該li。點擊執行以下動作:listDatatoDoListlistData,重新篩選未完成、已完成資料re-render 畫面
sort(compareFunction):
compareFunction(optional),函式會有兩個參數代表作用陣列項目,依照比較內容做排序。filter((element, index, targetArray)=>{}):
所有元素。element:目前作用元素index(optional):目前作用元素索引targetArray:作用陣列全新陣列***;如果沒有一個符合,返回空陣列[]
find((element, index, targetArray)=>{}):
第一個符合條件的元素。element:目前作用元素index(optional):目前作用元素索引targetArray(optional):作用陣列第一個符合元素;如果沒有一個符合,返回 undefined
findIndex((element, index, targetArray)=>{}):
第一個符合條件的元素索引。element:目前作用元素index(optional):目前作用元素索引targetArray(optional):作用陣列第一個符合元素索引;如果沒有一個符合,返回 -1
明日預告: